//********************************************************************// // Representer en kjedet samling kø.//********************************************************************class KjedetKø implements KøADT{ private int antall; private LinearNode front, bak; /****************************************************************** Oppretter en tom kø. ******************************************************************/ public KjedetKø() { antall = 0; front = bak = null; } /****************************************************************** Legger inn et spesifisert elemnt i køen. ******************************************************************/ public void innKø (T element) { LinearNode nyNode = new LinearNode(element); if (erTom()) front = nyNode; else bak.settNeste (nyNode); bak = nyNode; antall++; } /****************************************************************** Fjerner og returnerer elementet foran i køen. ******************************************************************/ public T utKø() { T resultat = null; if (!erTom()){ resultat = front.hentElement(); front = front.hentNeste(); } antall--; if (erTom()) bak = null; return resultat; } /****************************************************************** Returnerer elemnetet foran i køen ute å fjerne det. ******************************************************************/ public T første() { T resultat = null; if (!erTom()) resultat = front.hentElement(); return resultat; } /****************************************************************** Returnerer sann hvis køen er tom, usann ellesr. ******************************************************************/ public boolean erTom() { return (antall == 0); } /****************************************************************** Returnerer antall elemnter i køen. ******************************************************************/ public int antall() { return antall; } /****************************************************************** Returnerer en strengrepresentasjon av elementene i køen.. ******************************************************************/ public String toString(){ String resultat = "" ; LinearNode aktuell = front; while (aktuell != null) { resultat= resultat + (aktuell.hentElement()).toString() + "\n"; aktuell = aktuell.hentNeste(); } return resultat; }}